# 在test函数执行之前打印日志显示为: 函数名 + 正在执行中....
def loging(fun):
    def wrapper(*args, **kwargs):
        print(fun.__name__ + "正在执行中....")
        return fun(*args, **kwargs)
    return wrapper

#打印日志不允许动原函数 原函数的参数业不需要改变 原函数的返回值也不变
@loging
def test(a,b,c):
    for i in range(4):
        for j in range(2*i+1):
            print("*",end="")
        print()
    print(a,b,c)
    return a+b+c

@loging
def test2(a,b,c):
    for i in range(4):
        for j in range(7):
            print("*",end="")
        print()
    print(a, b, c)
    return a+b+c


#  但是!!! 改变了函数的调用形式
p = test(1,2,3)
q = test2(1,2,9)
print(p,q)